package com.cnxjs.shs4et.service;

import com.cnxjs.shs4et.common.Result;
import com.cnxjs.shs4et.entity.Topic;
import org.springframework.data.domain.Pageable;

public interface TopicService {
    // 分页查询所有帖子
    Result findAll(Pageable pageable);

    // 按照具体板块分页查询所有帖子
    Result findByBlock(Pageable pageable, Integer forum);

    // 按照论坛分页查所有帖子
    Result findByForum(Integer page, Integer size, String sortRule, String name);

    // 发帖子
    Result add(Topic topic);

    // 更新帖子
    Result update(Topic topic);

    // 伪删除（锁定）帖子
    Result delete(Integer id);

    // 按照标题模糊查所有帖子
    Result findByTitle(Pageable pageable, String title);

    // 点赞，点赞数+1
    void addLike(Integer id);
}
